package gem.model.dao;

/*
 *  Abstraktna klasa DAOFActory. Konkretan Factory ce morati
 *  da implementira ove metode u zavisnosti od tipa baze. Imamo samo Mysql, ali nikad se ne zna :)
 */
public abstract class DAOFactory
{
	public static final int MYSQL = 1;
	
	public abstract CourseDAO getCourseDAO();
	public abstract ScienceDomainDAO getScienceDomainDAO();
	public abstract DepartmentDAO getDepartmentDAO();
	
	
	public static DAOFactory getDAOFactory( int what )
	{
		switch( what )
		{
		case MYSQL:
			//TODO: Add static variable, not create every time
			return new MySqlDAOFactory();
		default:
			return null;
		}
	}
	
}
